package com.dhcc.DRGsHosp.facade;

import java.util.List;
import java.util.Map;

import org.openkoala.koala.commons.InvokeResult;

/**
 * @title		:SystemConfigFacade.java
 * @description	:对drgs.T_CONFIG增删改查Facade层
 * @author		:gehui
 * @date		:2016年11月30日
 * @version     :1.0
 * @copyright   :DHCC 2013-2014 
 */
public interface SystemConfigFacade {
	public InvokeResult systemConfig();
	
	
	public InvokeResult dicSearch(String param);
	
	public InvokeResult saveCfg(Map<String,Object> json);
	
	public InvokeResult delCfg(String param);
	/**
	 * 
	 * @methodname    :getConfigValue
	 * @description   : 获取已配置的数据值
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2016年12月29日
	 */
	public Map<Object,Object> getConfigValue();
	
/**
 * 
 *  findTableFiles.  
 *  @Description：获取字段和描述
 *  @Author LiuHongjun
 *  @param tableName
 *  @return 
 *  @Date:2017年4月28日上午11:49:20
 */
	public InvokeResult findTableFiles(String tableName);
/**
 * 
 *  getMaxGroupYear.  
 *  @Description：获取系统最大分组时间
 *  @Author LiuHongjun
 *  @return 
 *  @Date:2017年5月27日下午3:21:33
 */
public Object getMaxGroupYear();

/**
 * Description ：获取可配置的医院指标
 * date: 2017年7月10日 下午5:07:33  
 * @author ShaozhiYuan
 * @version V1.0 DHC
 */
public InvokeResult getHospQuota();
/**
 * Description ：获取可配置的医院指标
 * date: 2017年7月10日 下午5:07:33  
 * @author ShaozhiYuan
 * @version V1.0 DHC
 * @param flag 
 */
public void updateHospQuota(String dataHospQuote, String flag);
/**
 * 
 *  getStdYear.  
 *  @Description：获取年度标杆年份
 *  @Author LiuHongjun
 *  @return 
 *  @Date:2017年8月9日上午10:21:50
 */
public Object getStdYear();

/**
 *  getStdInfo.  
 *  @Description：获取标杆信息
 *  @Author fulianxia
 *  @return 
 *  @Date:2018年1月17日
 */
public Map<String,Object> getStdInfo();

/**
 * 
 *  getStdAvgFee.  
 *  @Description：获取调整后的次均费用
 *  @Author LiuHongjun
 *  @param stdYear
 * @param adjust 
 *  @return 
 *  @Date:2017年8月9日上午11:19:17
 */
public Object getStdAvgFee(String stdId, String adjust);
/**
 * 
 *  getAvgFeeConfig.  
 *  @Description：获取次均费用调整参数
 *  @Author LiuHongjun
 *  @return 
 *  @Date:2017年8月9日下午3:23:44
 */
public Object getAvgFeeConfig();
/**
 * 
 *  saveAvgFeeAdjust.  
 *  @Description：更新调整后的次均费用
 *  @Author LiuHongjun
 *  @param stdYear
 *  @param adjust
 *  @return 
 *  @Date:2017年8月9日下午4:08:55
 */
public Object saveAvgFeeAdjust(String stdId, String adjust);
/**
 * 
 *  getOrderDep.  
 *  @Description：获取医嘱开单科室
 *  @Author WENYI
 *  @return 
 *  @Date:2017年8月10日上午9:10:29
 */
public Object getOrderDep();

/**
 * 
 *  saveSpecialDep.  
 *  @Description：保存特殊部门配置
 *  @Author WENYI
 *  @param deps 医嘱开单科室
 *  @return 
 *  @Date:2017年8月10日上午9:15:46
 */
public int saveSpecialDep(String deps);

public Map<String,Object> getDoctorConfig();

public String  getMedisType();

public Object setSystemGroupScheme(String userId, String roleId, String groupScheme);

public String getSystemGroupScheme();

public List<Map<String, Object>> getMrGroupScheme();
/**
 *  @Discription：获取分组器和标杆映射关系
 *  @Author： liuhongjun
 *  @return
 *  @Date:2018年4月18日下午1:41:14
 */

public Map<String, Object> getGroupMatchStd();
/**
 * 
 *  @Discription：根据分组方案获取当前分组器版本
 *  @Author： liuhongjun
 *  @param groupScheme
 *  @return
 *  @Date:2018年4月18日下午8:35:15
 */

public String getGroupByScheme(String groupScheme);
/**
 *  @Discription：获取分组方案
 *  @Author： liuhongjun
 *  @param mouldeId
 *  @param userCode
 *  @param roleCode
 *  @return
 *  @Date:2018年5月10日下午5:27:27
 */

public String getSystemGroupScheme(String mouldeId, String userCode, String roleCode);

/**
 *  @Discription：获取在线分组版本号
 *  @Author： liuhongjun
 *  @return
 *  @Date:2018年8月28日下午3:51:54
 */
public Object getOnlineGroup();


/**
 * @methodname    :syncDepartment
 * @description   :科室周监测特殊科室同步到科室表
 * @param         :
 * @author        :lileizheng
 * @return        :
 * @date          :2018年11月20日
 */
public InvokeResult syncDepartment(String depInfo);

}
